Congestion control is an essential component in communication networks. Wireless Sensor Networks (WSNs) have particular constraints (e.g., allowed power limits, time-varying wireless links, etc.) that render congestion potentially catastrophic to data delivery. Furthermore, WSNs have limited resources (e.g., computation power, bandwidth) that make it difficult for WSNs to eliminate congestion once it occurs. The congestion may force the WSN into a vulnerable state wherein control packets do not arrive in a timely manner, thereby pushing the network to collapse. In a Time Division Multiple Access (TDMA)-based WSN, nodes are assigned periodic and fixed timeslots in which they can send and receive packets. The number and frequency of these repeating timeslots results in a fixed amount of bandwidth being assigned to each node. A network management application (“manager”) is responsible for the global coordination of network operation, though it is not, in general, aware of each packet transmission nor the multi-hop route followed by each packet.
One solution for reducing congestion is an over assignment of links to and from all nodes in the network which increases bandwidth based on the maximum known potential traffic flowing through the node. For example, if all descendants of a node generated a maximum of 10 packets per second, the node is configured to safely transmit 10 packets per second excluding any retry requirements due to wireless path quality. However, this consumes more resources (e.g., power) for nodes in the network than is necessary.